package monitormercado.negocio.analise.estrategia.agendamento;

import java.util.Date;

import monitormercado.framework.AgendamentoPorPeriodo;
import monitormercado.framework.Analise;
import monitormercado.framework.IListener;
import monitormercado.framework.PeriodoAgendamento;

public abstract class AgendamentoEstrategia extends AgendamentoPorPeriodo {
	
	public AgendamentoEstrategia(Date dataInicial, PeriodoAgendamento umPeriodo) {
		super(dataInicial, umPeriodo);
	}

	public AgendamentoEstrategia(Date dataInicial, PeriodoAgendamento umPeriodo, int numeroPeriodos) {
		super(dataInicial, umPeriodo, numeroPeriodos);
	}
	
	protected void notificarListeners(Object objetoAnalise) {
		Analise analise = (Analise) objetoAnalise;
		
		if (analise.temSinais()) {		
			for (IListener listener : getListeners()) {
				((IListenerAgendamentoSimulacao) listener).tratarAnalise(analise);
			}
		}
	}
	

	

}
